package com.ktgj.customer.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class CustomerCardOrderDetailsVO implements Serializable {
    public CustomerCardOrderDetailsVO() {
        this.cardOrderSubDetails = new ArrayList<>();
    }

    /**
     * 订单号
     */
    private String orderNum;

    /**
     * 会员编号
     */
    private long customerId;

    /**
     * 会员姓名
     */
    private String customerName;

    /**
     * 卡号
     */
    private String cardCode;

    /**
     * 卡类型
     */
    private String cardName;

    /**
     * 订单状态
     */
    private String orderStatus;

    /**
     * 业绩归属人
     */
    private String employeeName;

    /**
     * 业绩归属部门
     */
    private String employeeDept;

    /**
     * 操作人编号
     */
    private long employeeId;

    /**
     * 下单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 销售方式（1 Wap、2 Web、3 IOS、4 Adriod、5 CallCenter、6 WeiXin）
     */
    private long sourceway;

    /**
     * 支付类型
     */
    private String payType;

    /**
     * 支付金额
     */
    private BigDecimal usedMoney;

    /**
     * 交易流水号
     */
    private String partyPayNum;

    /**
     * 支付状态
     */
    private String state;

    /**
     * 支付时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date payTime;

    /**
     * 业务信息
     */
    private List<CustomerCardOrderSubDetailsVO> cardOrderSubDetails;

    /**
     * 发票抬头
     */
    private String invoiceTitle;

    /**
     * 发票税号
     */
    private String taxpayerNum;

    public String getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(String orderNum) {
        this.orderNum = orderNum;
    }

    public long getCustomerId() {
        return customerId;
    }

    public void setCustomerId(long customerId) {
        this.customerId = customerId;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getCardCode() {
        return cardCode;
    }

    public void setCardCode(String cardCode) {
        this.cardCode = cardCode;
    }

    public String getCardName() {
        return cardName;
    }

    public void setCardName(String cardName) {
        this.cardName = cardName;
    }

    public String getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getEmployeeName() {
        return employeeName;
    }

    public void setEmployeeName(String employeeName) {
        this.employeeName = employeeName;
    }

    public String getEmployeeDept() {
        return employeeDept;
    }

    public void setEmployeeDept(String employeeDept) {
        this.employeeDept = employeeDept;
    }

    public long getEmployeeId() {
        return employeeId;
    }

    public void setEmployeeId(long employeeId) {
        this.employeeId = employeeId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public long getSourceway() {
        return sourceway;
    }

    public void setSourceway(long sourceway) {
        this.sourceway = sourceway;
    }

    public String getPayType() {
        return payType;
    }

    public void setPayType(String payType) {
        this.payType = payType;
    }

    public BigDecimal getUsedMoney() {
        return usedMoney;
    }

    public void setUsedMoney(BigDecimal usedMoney) {
        this.usedMoney = usedMoney;
    }

    public String getPartyPayNum() {
        return partyPayNum;
    }

    public void setPartyPayNum(String partyPayNum) {
        this.partyPayNum = partyPayNum;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public String getInvoiceTitle() {
        return invoiceTitle;
    }

    public void setInvoiceTitle(String invoiceTitle) {
        this.invoiceTitle = invoiceTitle;
    }

    public String getTaxpayerNum() {
        return taxpayerNum;
    }

    public void setTaxpayerNum(String taxpayerNum) {
        this.taxpayerNum = taxpayerNum;
    }

    public List<CustomerCardOrderSubDetailsVO> getCardOrderSubDetails() {
        return cardOrderSubDetails;
    }
}
